package com.yjz.proxy.jdkproxy;


import java.lang.reflect.Proxy;

public class ProxyTest {
  public static void main(String[] args) {
    /**
     * 生成的代理类.class文件
     */
    System.getProperties().put("sun.misc.ProxyGenerator.saveGeneratedFiles", "true");
    StudyInterface stu = new Student();
    MyInvokeHandler handler = new MyInvokeHandler(stu);
    StudyInterface student = (StudyInterface) Proxy.newProxyInstance(stu.getClass().getClassLoader(), stu.getClass().getInterfaces(), handler);
    student.study("数学");
    /**
     * 注意 {@link  Student#sing()} 该方法是没法被代理的，因为不属于任何父类接口
     */
  }
}
